package com.dingreading.cloud.admin.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 实体类。
 *
 * @author Administrator
 * @since 2023-11-22
 */
@Data
@Table(value = "store_products")
public class StoreProducts implements Serializable {

    @Id(keyType = KeyType.Auto)
    private Long id;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()")
    private Date addTime;

    /**
     * 更新时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()", onUpdateValue = "now()")
    private Date editTime;


    /**
     * 自定义，门店uid
     */
    @ApiModelProperty(value = "门店uid")
    private String storeUid;

    /**
     * 自定义，门店名称
     */
    @ApiModelProperty(value = "门店名称")
    private String storeName;

    /**
     * 产品名称
     */
    @ApiModelProperty(value = "产品名称")
    private String productName;

    /**
     * 产品uid
     */
    @ApiModelProperty(value = "项目uid")
    private String uid;

    /**
     * 门店使用权限  1.自营+加盟 2.自营 3.加盟店
     */
    @ApiModelProperty(value = "门店使用权限")
    private Integer showStatus;

    /**
     * 产品类型 1.引流产品
     */
    @ApiModelProperty(value = "产品类型")
    private Integer productType;

    /**
     * 产品包含的服务数量
     */
    @ApiModelProperty(value = "产品包含的服务数量")
    private Integer projectNum;

    /**
     * 排序
     */
    @ApiModelProperty(value = "排序")
    private Integer orderNum;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;

    /**
     * 是否禁用
     * 1.启用 0.禁用
     */
    @ApiModelProperty(value = "是否禁用 1.启用 0.禁用")
    private Integer enabled;

    /**
     * 数据来源 1.总部 2.门店
     */
    @ApiModelProperty(value = "数据来源 1.总部 2.门店")
    private Integer source;

    /**
     * 创建人uid
     */
    @ApiModelProperty(value = "创建人uid")
    private String addStaffUid;

    /**
     * 创建人姓名
     */
    @ApiModelProperty(value = "创建人姓名")
    private String addStaffName;

    /**
     * 更新人uid
     */
    @ApiModelProperty(value = "更新人uid")
    private String lastStaffUid;

    /**
     * 更新人姓名
     */
    @ApiModelProperty(value = "更新人姓名")
    private String lastStaffName;

    /**
     * 门店合作类型
     */
    @ApiModelProperty(value = "门店合作类型")
    private String cooperationType;

    /**
     * 运营类型
     */
    @ApiModelProperty(value = "运营类型")
    private String operationType;

    @Column(ignore = true)
    private List<StoreProductLogs> list;
}
